import dt from '@dt/dt'
import paramsMgr from '@/biz/bonus/params.js'

function options(_this) {
  let opt = [
    [{
      key: 'defaultAgencyFee',
      title: '默认虚拟代理费率(%)',
      placeholder: '请输入默认虚拟代理费率',
      col: 8,
      input: {
        type: 'number',
        min: 0,
        max: 100
      }
    }, {
      col: 3,
      button: {
        title: '新增产品设置',
        type: 'primary',
        ghost: true,
        click: () => {
          _this.list.push({
            productIds: [],
            virtualAgencyFee: 0
          })
        }
      }
    }]
  ]
  return opt
}

function columns(_this, flag) {
  return [{
      type: 'index',
      title: '序号',
      width: 60
    },
    {
      title: '产品',
      cell: (row) => {
        return {
          edit: {
            key: 'productIds',
            placeholder: '请选择产品(多选)',
            select: {
              options: paramsMgr.products(_this.list, row),
              multiple: true,
              maxTagCount: 1
            }
          }
        }
      }
    },
    {
      title: '虚拟代理费率(%)',
      cell: {
        edit: {
          key: 'virtualAgencyFee',
          placeholder: '请输入虚拟代理费率',
          col: 9,
          input: {
            type: 'number',
            min: 0,
            max: 100
          }
        }
      }
    },
    {
      field: 'handles',
      title: '操作',
      width: 70,
      cell: (row) => {
        return {
          btn: [{
            title: '删除',
            event: 'onDelete',
          }]
        }
      }
    }
  ]
}

function helps() {
  return [{
      label: '虚拟代理费率设置',
      value: ['若项目需要进行奖金预发，请优先配置“虚拟代理费率”']
    }, {
      label: '默认虚拟代理费率',
      value: ['配置后，所有产品按此配置计算，虚拟代理费=签约总价*虚拟代理费率']
    }, {
      label: '新增产品设置',
      value: ['可选择不同产品设置不同的虚拟代理费率，未设的产品按默认虚拟代理费率计算']
    }, {
      tips: '以上配置在保存后即时生效，不影响已发起奖金单',
    },
  ]
}

export default {
  options,
  columns,
  helps
}
